package com.ruoyi.service;

import com.github.pagehelper.PageInfo;
import com.hundun.vision.api.dto.ExchangeDTO;
import com.hundun.vision.api.dto.RobotDTO;
import com.hundun.vision.api.dto.StrategyDTO;
import com.hundun.vision.api.query.RobotQuery;
import com.hundun.vision.api.request.RobotRequest;

import java.util.List;

/**
 * @author ：RuoChen
 * @date ：16:28 2021/6/10
 * @description：机器人服务类
 */
public interface RobotService {
    /**
     * 新增
     *
     * @param request
     * @return
     */
    Boolean save(RobotRequest request);

    /**
     * 批量删除
     *
     * @param robotIds
     * @return
     */
    Integer removeByIds(List<Long> robotIds);

    /**
     * 更新
     *
     * @param request
     * @return
     */
    Boolean update(RobotRequest request);


    /**
     * 获取交易所列表
     *
     * @return
     */
    List<ExchangeDTO> getExchanges();

    /**
     * 获取交易所列表
     *
     * @return
     */
    List<StrategyDTO> getStrategies();

    /**
     * 根据ID获取
     *
     * @param robotId
     * @return
     */
    RobotDTO getById(Long robotId);

    /**
     * 查询
     *
     * @param query
     * @return
     */
    PageInfo<RobotDTO> search(RobotQuery query);

    /**
     * 开始
     *
     * @param robotIds
     * @return
     */
    Integer start(List<Long> robotIds);

    /**
     * 暂停
     *
     * @param robotIds
     * @return
     */
    Integer pause(List<Long> robotIds);
}
